Particular embodiments generally relate to automatic bus routing in electronic design automation (EDA).
In an integrated circuit, a bus is a group of signal nets with both their source pins and target pins located relatively close to each other. The bus is routed in a similar topology and obeys the integrated circuit layout design rules. The bus should be routed together and in parallel going through the same routing channel on the same routing layer and have about the same wire length. Because the bus includes multiple wires routed together, routing the bus may be harder than routing a single wire. Traditional signal routers route only one net at a time. The bus is routed manually by a user. For example, the user manually selects a routing path in the integrated circuit layout for each net individually until all the nets for the bus are routed. When there are a lot of buses to route, it becomes harder to route the buses manually in a time-efficient and accurate manner.